package com.java.liberal;

import java.util.Scanner;

public class BookManager {
    private Book[] books = new Book[50];
    Scanner input = new Scanner(System.in);

    //无参构造方法初始化数据
    public BookManager(){
        Book book = new Book();
        books[0] = book;
    }
    public void showMenu(){
        char ch = 'n';        //标记是否返回主菜单   y:返回主菜单    n: 退出程序
        do{
            System.out.println("******************** 欢迎使用迷你图书管理系统 ***********************");
            System.out.println("-------------------------------------------------------------------");
            System.out.println("1. 查看图书");
            System.out.println("2. 新增图书");
            System.out.println("3. 删除图书");
            System.out.println("4. 借出图书");
            System.out.println("5. 归还图书");
            System.out.println("6. 修改图书");
            System.out.println("7. 借出排行");
            System.out.println("8. 退出");
            System.out.println("-------------------------------------------------------------------");
            System.out.print("请选择:");
            int chose = input.nextInt();
            switch (chose){//这种方式结构清晰，利于修改，给每个功能创建一个专属方法
                case 1:
                    System.out.println("------- 查看图书 --------");
                    this.showBook();    //调用显示所有图书的方法
                    break;
                case 2:
                    System.out.println("------- 新增图书 --------");
                    this.addBook();
                    break;
                case 3:
                    System.out.println("------- 删除图书 --------");
                    deleteBook();
                    break;
                case 4:
                    System.out.println("------- 借出图书 --------");
                    this.lendBook();
                    break;
                case 5:
                    System.out.println("------- 归还图书 --------");
                    this.returnBook();
                    break;
                case 6:
                    System.out.println(" 6功能未实现 ");
                    break;
                case 7:
                    System.out.println("------- 借出排行 --------");
                    this.sortBook(); //排序
                    this.showBook(); //显示数据
                    break;
                case 8:
                    //多种退出方式
                    //return;
                    //Runtime.getRuntime().exit(0);
                    System.exit(0);  //结束JVM 0：正常退出   其它都是非正常的退出
                    System.out.println("程序结束，谢谢您的使用.");
                    break;
                default:
                    System.out.println("你选择的功能不存在.");
            }

            System.out.print("是否返回主菜单(y/n):");
            ch = input.next().charAt(0);

        }while (ch == 'y' || ch == 'Y');

        System.out.println("程序结束，谢谢您的使用.");
    }
}
